﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using NHibernate;

namespace SmartProject
{
    /// <summary>
    /// A Business rule manages and ensures that the requirements for the entity that
    /// implements the business rule.
    /// </summary>
    public abstract class BusinessRule
    {
        public abstract string Name { get; }

        public abstract string Description { get; }

        public abstract void Implement(ISession session, EntityBase entity);

        public abstract bool QueryBooleanProperty(string propertyName);
    }
}
